home *** CD-ROM | disk | FTP | other *** search
Text File | 1991-11-26 | 1.1 KB | 62 lines | [TEXT/PJMM] |
- unit NumSubs;
-
- { ©1991 Quinn "The Eskimo" }
-
- interface
-
- {$ifc undefined THINK_Pascal}
- uses
- Types;
- {$endc}
-
- type
- anon_str = string[15];
-
- function DecStr (n: longint): anon_str;
-
- function HexN (n: integer): char;
- function HexB (n: integer): anon_str;
- function HexW (n: integer): anon_str;
- function HexL (n: univ longint): anon_str;
-
- implementation
-
- {$ifc undefined THINK_Pascal}
- uses
- Packages;
- {$endc}
-
- function DecStr (n: longint): anon_str;
- var
- res: Str255;
- begin
- NumToString(n, res);
- DecStr := res;
- end; { DecStr }
-
- function HexN (n: integer): char;
- begin
- if n >= 10 then begin
- HexN := chr(n - 10 + ord('A'));
- end
- else begin
- HexN := chr(n + ord('0'));
- end; (* if *)
- end; (* HexN *)
-
- function HexB (n: integer): anon_str;
- begin
- HexB := concat(HexN(band(bsr(n, 4), $F)), HexN(band(n, $F)));
- end; (* HexB *)
-
- function HexW (n: integer): anon_str;
- begin
- HexW := concat(HexB(band(bsr(n, 8), $FF)), HexB(band(n, $FF)));
- end; (* HexW *)
-
- function HexL (n: univ longint): anon_str;
- begin
- HexL := concat(HexW(HiWrd(n)), HexW(LoWrd(n)));
- end; (* HexL *)
-
- end. { NumSubs }